client based learning